(function () {
    // 1.需求：验证表单
    let form = layui.form
    form.verify({
        nickname: [
            /^[\S]{6,10}$/,
            '密码必须6到10位，且不能出现空格'
        ]
    })

    // 渲染函数
    initUserName()
    // 2.需求：发送Ajax 获取用户信息 渲染到页面上
    // 渲染用户信息功能 重置的时候还需要使用
    function initUserName() {
        axios({
            method: 'get',
            url: '/my/userinfo',
        }).then(({
            data: res
        }) => {
            // const {
            //     username,
            //     nickname,
            //     emial
            // } = res.data
            if (res.status !== 0) {
                return layer.msg(res.message)
            }
            form.val("formTest", res.data
                //  {
                //     //formTest 即 class="layui-form" 所在元素属性 lay-filter="" 对应的值
                //     "username": username, // "name": "value"
                //     "nickname": nickname,
                //     "emial": emial
                // }
            );
        })
    }



    // form重置事件
    $('#formUserIfro').on('reset', function (e) {
        // 阻止提交事件
        e.preventDefault()
        // 重新渲染我们获取用户信息函数
        initUserName()
    })

    // form提交事件 发送Ajax
    $('#formUserIfro').on('submit', function (e) {
        // 阻止提交事件
        e.preventDefault()
        axios({
            method: 'POST',
            url: '/my/userinfo',
            data: $(this).serialize()
        }).then(({
            data: res
        }) => {
            console.log(res);
            // 判断状态码 错误提示
            if (res.status !== 0) {
                return layer.msg(res.status)
            }
            // 成功提示
            layer.msg('恭喜 修改用户信息成功')
            // 直接调用 index.js里面的函数 无效 因为window不一样  
            // window.parent 父页面的window 
            window.parent.data()
        })

    })

})()